package com.cd2cd.code_template.code_template.domain.gen;

import java.io.Serializable;

public class SuperSysAuth implements Serializable {
    private Integer id;

    /**
     * 上级id
     */
    private Integer pid;

    /**
     * 唯一标识
     */
    private String guid;

    /**
     * 权限名称
     */
    private String name;

    /**
     * 接口地址
     */
    private String url;

    /**
     * 接口请求方式 GET、POST、PUT、DELETE
     */
    private String mode;

    /**
     * 权限所属 SysAdmin Backend Customer Api App
     */
    private String type;

    /**
     * 是否权限 yes no
     */
    private String auth;

    /**
     * 排序
     */
    private Integer sort;

    /**
     * 路由地址
     */
    private String routePath;

    /**
     * 对应组件名称
     */
    private String componentName;

    /**
     * 图标
     */
    private String icon;

    /**
     * 权限类型  contents menu auth
     */
    private String authType;

    /**
     * 是否显示 yes no
     */
    private String display;

    private static final long serialVersionUID = 1L;

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    /**
     * 上级id
     */
    public Integer getPid() {
        return pid;
    }

    /**
     * 上级id
     */
    public void setPid(Integer pid) {
        this.pid = pid;
    }

    /**
     * 唯一标识
     */
    public String getGuid() {
        return guid;
    }

    /**
     * 唯一标识
     */
    public void setGuid(String guid) {
        this.guid = guid;
    }

    /**
     * 权限名称
     */
    public String getName() {
        return name;
    }

    /**
     * 权限名称
     */
    public void setName(String name) {
        this.name = name;
    }

    /**
     * 接口地址
     */
    public String getUrl() {
        return url;
    }

    /**
     * 接口地址
     */
    public void setUrl(String url) {
        this.url = url;
    }

    /**
     * 接口请求方式 GET、POST、PUT、DELETE
     */
    public String getMode() {
        return mode;
    }

    /**
     * 接口请求方式 GET、POST、PUT、DELETE
     */
    public void setMode(String mode) {
        this.mode = mode;
    }

    /**
     * 权限所属 SysAdmin Backend Customer Api App
     */
    public String getType() {
        return type;
    }

    /**
     * 权限所属 SysAdmin Backend Customer Api App
     */
    public void setType(String type) {
        this.type = type;
    }

    /**
     * 是否权限 yes no
     */
    public String getAuth() {
        return auth;
    }

    /**
     * 是否权限 yes no
     */
    public void setAuth(String auth) {
        this.auth = auth;
    }

    /**
     * 排序
     */
    public Integer getSort() {
        return sort;
    }

    /**
     * 排序
     */
    public void setSort(Integer sort) {
        this.sort = sort;
    }

    /**
     * 路由地址
     */
    public String getRoutePath() {
        return routePath;
    }

    /**
     * 路由地址
     */
    public void setRoutePath(String routePath) {
        this.routePath = routePath;
    }

    /**
     * 对应组件名称
     */
    public String getComponentName() {
        return componentName;
    }

    /**
     * 对应组件名称
     */
    public void setComponentName(String componentName) {
        this.componentName = componentName;
    }

    /**
     * 图标
     */
    public String getIcon() {
        return icon;
    }

    /**
     * 图标
     */
    public void setIcon(String icon) {
        this.icon = icon;
    }

    /**
     * 权限类型  contents menu auth
     */
    public String getAuthType() {
        return authType;
    }

    /**
     * 权限类型  contents menu auth
     */
    public void setAuthType(String authType) {
        this.authType = authType;
    }

    /**
     * 是否显示 yes no
     */
    public String getDisplay() {
        return display;
    }

    /**
     * 是否显示 yes no
     */
    public void setDisplay(String display) {
        this.display = display;
    }

    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append(getClass().getSimpleName());
        sb.append(" [");
        sb.append("Hash = ").append(hashCode());
        sb.append(", id=").append(id);
        sb.append(", pid=").append(pid);
        sb.append(", guid=").append(guid);
        sb.append(", name=").append(name);
        sb.append(", url=").append(url);
        sb.append(", mode=").append(mode);
        sb.append(", type=").append(type);
        sb.append(", auth=").append(auth);
        sb.append(", sort=").append(sort);
        sb.append(", routePath=").append(routePath);
        sb.append(", componentName=").append(componentName);
        sb.append(", icon=").append(icon);
        sb.append(", authType=").append(authType);
        sb.append(", display=").append(display);
        sb.append(", serialVersionUID=").append(serialVersionUID);
        sb.append("]");
        return sb.toString();
    }

    @Override
    public boolean equals(Object that) {
        if (this == that) {
            return true;
        }
        if (that == null) {
            return false;
        }
        if (getClass() != that.getClass()) {
            return false;
        }
        SuperSysAuth other = (SuperSysAuth) that;
        return (this.getId() == null ? other.getId() == null : this.getId().equals(other.getId()))
            && (this.getPid() == null ? other.getPid() == null : this.getPid().equals(other.getPid()))
            && (this.getGuid() == null ? other.getGuid() == null : this.getGuid().equals(other.getGuid()))
            && (this.getName() == null ? other.getName() == null : this.getName().equals(other.getName()))
            && (this.getUrl() == null ? other.getUrl() == null : this.getUrl().equals(other.getUrl()))
            && (this.getMode() == null ? other.getMode() == null : this.getMode().equals(other.getMode()))
            && (this.getType() == null ? other.getType() == null : this.getType().equals(other.getType()))
            && (this.getAuth() == null ? other.getAuth() == null : this.getAuth().equals(other.getAuth()))
            && (this.getSort() == null ? other.getSort() == null : this.getSort().equals(other.getSort()))
            && (this.getRoutePath() == null ? other.getRoutePath() == null : this.getRoutePath().equals(other.getRoutePath()))
            && (this.getComponentName() == null ? other.getComponentName() == null : this.getComponentName().equals(other.getComponentName()))
            && (this.getIcon() == null ? other.getIcon() == null : this.getIcon().equals(other.getIcon()))
            && (this.getAuthType() == null ? other.getAuthType() == null : this.getAuthType().equals(other.getAuthType()))
            && (this.getDisplay() == null ? other.getDisplay() == null : this.getDisplay().equals(other.getDisplay()));
    }

    @Override
    public int hashCode() {
        final int prime = 31;
        int result = 1;
        result = prime * result + ((getId() == null) ? 0 : getId().hashCode());
        result = prime * result + ((getPid() == null) ? 0 : getPid().hashCode());
        result = prime * result + ((getGuid() == null) ? 0 : getGuid().hashCode());
        result = prime * result + ((getName() == null) ? 0 : getName().hashCode());
        result = prime * result + ((getUrl() == null) ? 0 : getUrl().hashCode());
        result = prime * result + ((getMode() == null) ? 0 : getMode().hashCode());
        result = prime * result + ((getType() == null) ? 0 : getType().hashCode());
        result = prime * result + ((getAuth() == null) ? 0 : getAuth().hashCode());
        result = prime * result + ((getSort() == null) ? 0 : getSort().hashCode());
        result = prime * result + ((getRoutePath() == null) ? 0 : getRoutePath().hashCode());
        result = prime * result + ((getComponentName() == null) ? 0 : getComponentName().hashCode());
        result = prime * result + ((getIcon() == null) ? 0 : getIcon().hashCode());
        result = prime * result + ((getAuthType() == null) ? 0 : getAuthType().hashCode());
        result = prime * result + ((getDisplay() == null) ? 0 : getDisplay().hashCode());
        return result;
    }
}